package games.sence;

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.net.URL;

public class SencePanel extends JPanel implements KeyListener, ActionListener {
    private int width = 500;
    private int height = 500;

    Timer timer = new Timer(100, this);

    public SencePanel() {
        this.setFocusable(true);
        this.addKeyListener(this);
    }

    @Override
    protected void paintComponent(Graphics g) {
        // 清屏
        super.paintComponent(g);
        // 绘制背景色
//        this.setSize(width, height);
//        g.setColor(Color.black);
//        g.fillRect(0, 0, width, height);
        //

        // 绘制图形
//        for (int i = 0; i < SceneMap.MAP.length; i++) {
//            int y = i*5;
//            Object[] arr = SceneMap.MAP[i];
//            for (int j = 0; j < arr.length; j++) {
//                int x = j*5;
//                System.out.println(i + "," + j + ": " + arr[j]);
//                if ("0".equals(String.valueOf(arr[j]))) {
//
//                    g.setColor(new Color(150,150,150));
//                    g.fillRect(x, y, 5, 25);
//                } else if ("1".equals(String.valueOf(arr[j]))){
//                    g.setColor(new Color(0,0,0));
//                    g.fillRect(x, y, 5, 5);
//                } else if ("2".equals(String.valueOf(arr[j]))){
//                    g.setColor(new Color(0,100,50));
//                    g.fillRect(x, y, 5, 5);
//                }  else if ("3".equals(String.valueOf(arr[j]))){
//                    g.setColor(new Color(0,0,200));
//                    g.fillRect(x, y, 5, 5);
//                }
//            }
//        }
//
//        g.setColor(new Color(0,100,10));
//        for (int i = 0; i < 100; i++) {
//            for (int j = 0; j < 100; j++) {
//                g.fillOval(i*5, j*5, 2, 2);
//            }
//        }

        URL resource = getClass().getResource("/img/scene/wall.png");
        System.out.println(resource);
        ImageIcon imageIcon = new ImageIcon(resource);
        Graphics2D g2 = (Graphics2D)g;
        Image img = Toolkit.getDefaultToolkit().getImage(resource);
        MediaTracker t = new MediaTracker(this);
        t.addImage(img, 0);
        try {
            t.waitForAll();
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        g2.drawImage(imageIcon.getImage(), 0, 0, this);
    }

    @Override
    public void keyTyped(KeyEvent e) {

    }

    @Override
    public void keyPressed(KeyEvent e) {

    }

    @Override
    public void keyReleased(KeyEvent e) {

    }

    @Override
    public void actionPerformed(ActionEvent e) {

    }
}
